/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package smjf_bancodados;

import Beans.Agenda;
import Beans.Horario;
import Beans.Jogador;
import Beans.Jogo;
import Beans.Usuario;
import Daos.AgendaDao;
import Daos.HorarioDao;
import Daos.JogadorDao;
import Daos.JogoDao;
import Daos.Mapeador;
import Daos.UsuarioDao;
import Validador.ValidaAgenda;
import Validador.ValidaHorario;
import Validador.ValidaJogador;
import Validador.ValidaJogo;
import Validador.ValidaUsuario;

/**
 *
 * @author williambartko
 */
public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Mapeador.excluirTabelas();
        Mapeador.criarTabelas();

        int proximo = 0;

        Horario horario = new Horario("25:30", "00:30");
        Usuario usuario = new Usuario("William", "williambartko@gmail.com", "4435236995", "4488022822", "william", "williambartko");
        
        Agenda agenda = new Agenda(4, usuario, horario);
        Jogo jogo = new Jogo("31/05/2010", usuario, horario);
        Jogador jogador = new Jogador(1, usuario, jogo);


        ValidaUsuario validaUsuario = new ValidaUsuario(usuario);
        if (validaUsuario.validaTodosOsCampos()) {
//            new UsuarioDao(usuario).persist();
            proximo = 1;
        }



        ValidaHorario validaHorario = new ValidaHorario(horario);
        if (validaHorario.validaTodosOsCampos() && proximo == 1) {
//            new HorarioDao(horario).persist();
            proximo = 2;
        }

        ValidaAgenda validaAgenda = new ValidaAgenda(agenda);
        if (validaAgenda.validaTodosOsCampos() && proximo == 2) {
//            new AgendaDao(agenda).persist();
            proximo = 3;
        }

        ValidaJogo validaJogo = new ValidaJogo(jogo);
        if (validaJogo.validaTodosOsCampos() && proximo == 3) {
//            new JogoDao(jogo).persist();
            proximo = 4;
        }

        ValidaJogador validaJogador = new ValidaJogador(jogador);
        if (validaJogador.validaTodosOsCampos() && proximo == 4) {
//            new JogadorDao(jogador).persist();
            proximo = 5;
        }

        //só grava no banco se todos os dasos estiverem ok!
        if (proximo == 5) {
            new UsuarioDao(usuario).persist();
            new HorarioDao(horario).persist();
            new AgendaDao(agenda).persist();
            new JogoDao(jogo).persist();
            new JogadorDao(jogador).persist();
        }

//        ValidaHorario validaHorario = new ValidaHorario(horario);
//        if(validaHorario.validaTodosOsCampos()){
//            new HorarioDao(horario).persist();
//        }
//
//         ValidaAgenda validaAgenda = new ValidaAgenda(agenda);
//         if(validaAgenda.validaTodosOsCampos()){
//             new AgendaDao(agenda).persist();
//         }
//
//         ValidaJogo validaJogo = new ValidaJogo(jogo);
//         if(validaJogo.validaTodosOsCampos()){
//             new JogoDao(jogo).persist();
//         }
//
//         ValidaJogador validaJogador = new ValidaJogador(jogador);
//         if(validaJogador.validaTodosOsCampos()){
//             new JogadorDao(jogador).persist();
//         }









    }
}
